#pragma once

#include "Lockable.h"

#define Cell_PARTICLE_MAXIMUM (3)

namespace ParticleEngine
{
	class ParticleBase;
	class Cell
	{
	public:
		size_t*				D_CellParticles;
		size_t*				D_CellParticleCount;
		Lockable*			D_CellLock;


		/*
		Cell();
		~Cell();
		*/
		/*
		//hier wird threadsave also mit locking bearbeitet
		void AddParticleSave(ParticleBase* P0);
		void RemoveParticleSave(ParticleBase* P0);

		//hier nicht threadsave ohne locking
		void AddParticleUnsave(ParticleBase* P0);
		void RemoveParticleUnsave(ParticleBase* P0);

		//kollisionssuche
		void CollisionOwnCell(ParticleBase* P0);
		void CollisionOtherCell(ParticleBase* P0);

		ParticleBase* Particles[Cell_PARTICLE_MAXIMUM];
		size_t ParticleCount;
		*/
	};
}